package com.ssm.redis.init;

import org.springframework.context.annotation.Configuration;
import org.springframework.stereotype.Component;

//@Component把类注入到spring容器中使用Component(Service Repository/Mapper Controller)
//@Configuration用于定义配置类，可替换xml配置文件，被注解的类内部包含有一个或多个被@Bean注解的方法
@Component
public abstract class AbstractCache { //只定义预热缓存用到的方法
    public abstract void initCache(); //初始化缓存

    public abstract <T> T getCache();//获取cache (返回值任意类型，定义泛型T，要先声明<T>)


    public abstract void clearCache();//清除缓存

    public void reloadCache() { //重载缓存
        clearCache();
        initCache();
    }

}
